Repository navigation
feat(platform): list v3 entities without field definitions - #1885
wilcobrouwer wants to merge 2 commits into
Conversation
|
There was a problem hiding this comment.
🟢 Approval recommended
The change is backward compatible by default, correctly gated to v1-only behavior, and includes targeted sync/async tests for the new functionality.
Pull request overview
This PR adds an opt-in way to list Data Service entities without returning each entity’s full fields schema, reducing response size (and traced span size) for tenants with many entities while keeping default behavior unchanged.
Changes:
- Added
include_fields: bool = TruetoEntitiesService.list_entities()/list_entities_async()and routedinclude_fields=Falseto the v1/Entity/simpleendpoint. - Extended the internal
EntitySchemaServicelist methods/spec builder to supportinclude_fields, rejectinginclude_fields=Falsewhenuse_v3=True. - Added sync/async tests for the “simple” route behavior and a test asserting v3 rejection; bumped
uipath-platformto0.2.27.
File summaries
| File | Description |
|---|---|
| packages/uipath/uv.lock | Updates locked uipath-platform version to 0.2.27. |
| packages/uipath-platform/uv.lock | Updates local package lock version to 0.2.27. |
| packages/uipath-platform/tests/services/test_entities_service.py | Adds coverage for listing entities without field schemas (sync/async) and v3 rejection behavior. |
| packages/uipath-platform/src/uipath/platform/entities/_entity_schema_service.py | Implements include_fields routing to /Entity/simple and enforces v1-only support. |
| packages/uipath-platform/src/uipath/platform/entities/_entities_service.py | Exposes include_fields on public list methods and documents the behavior. |
| packages/uipath-platform/pyproject.toml | Bumps package version to 0.2.27. |
Review details
- Files reviewed: 4/6 changed files
- Comments generated: 0
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
8dc0ec0 to
abf78b1
Compare
abf78b1 to
3b4a4ac
Compare
list_entities_v3(include_fields=False) pages through GET datafabric_/api/v3/entities/paginated, which lists the same entities as GET /v3/entities without loading their field schemas. Bumps uipath-platform to 0.2.42. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
3b4a4ac to
fa4997d
Compare
|



Why
list_entities_v3()returns every entity with its fullfieldsschema. On a tenant with many entities that is a large response, and@tracedstores it in the span as well. Callers that only need names and ids (for example to resolve an entity id by name) pay for every field definition.Measured on a test tenant with 11 entities:
fieldsGET datafabric_/api/v3/entitiesGET datafabric_/api/v3/entities/paginatedHowever, on production our COE team has 100+ entities with a large amount of fields. This becomes a 3+ MB response that takes over a second to arrive.
What changed
uipath-platformto 0.2.42.🤖 Generated with Claude Code